1. Field of the Invention
This invention relates generally to a processor-based system, and, more particularly, to managing data time-outs within a processor-based system.
2. Description of the Related Art
The last several years have witnessed an increased demand for network computing, partly due to the emergence of the Internet. Some of the notable trends in the industry include a boom in the growth of Applications Service Providers (ASPs) that provide applications to businesses over networks and enterprises that use the Internet to distribute product data to customers, take orders, and enhance communications with employees.
Businesses typically rely on network computing to maintain a competitive advantage over other businesses. As such, developers, when designing processor-based systems for use in network-centric environments, may take several factors into consideration to meet the expectation of the customers, factors such as functionality, reliability, scalability, and performance of such systems.
One example of a processor-based system used in a network-centric environment is a mid-range server system. A single mid-range server system may have a plurality of system boards that may, for example, contain one or more processors and one or more cache memory elements that store copies of frequently used data in close proximity to the one or more processors to provide the one or more processors with faster access to the data. The one or more processors may also include one or more associated non-cache memory elements that may store larger blocks of data. The mid-range server system may also have a plurality of input/output (I/O) boards that may manage I/O cards, such as peripheral component interface cards and optical cards that may couple to devices such as disk memories, CD-ROMs, tape drives, and the like.
In some embodiments, it may be desirable to configure one or more of the plurality of system boards and/or I/O boards as one or more domains, where a domain, for example, may act as a separate machine by running its own instance of an operating system to perform one or more of the configured tasks. For example, in one embodiment, one domain may be configured as a web server, another as a database server, and a third as a network server. One or more processors on one or more of the plurality of system boards and/or I/O boards in a domain may access data stored in the non-cache memory elements in the domain. Although an individual domain may act as a separate machine, components on a system board in a first domain may also communicate with components in a second domain through an inter-domain network (IDN).
In a typical network-centric environment, a plurality of data communications may occur along many paths of communication. Each path of communication may carry a variety of information, including data, requests for data, and the like. For example, a processor on a system board may provide data to an I/O device located on an I/O board. However, during data communications, requested data may not always be provided to the requesting component. The data may be lost, destroyed, or altered due to human, machine, or other error. In some embodiments, the requesting component may wait an indefinite amount of time for data that may not be available. This could result in a variety of problems during the operation of the mid-range server system. For example, the mid-range server system may cease operation or create a backlog of subsequent data communications operations, which lessens the efficiency of the system. Furthermore, resources allocated by the mid-range server system to perform the system data communications may be wasted in an attempt to recover the lost data. This may be problematic in time-critical as well as resource-critical applications. Consequently, there is a need for an efficient system for managing data time-outs.